<template>
  <el-date-picker
    v-model="changeValue"
    popper-class="t-date-picker"
    v-bind="{...item}"
  />
</template>

<script>
import mixin from '../mixin'

function dateFormat(fmt, date) {
  let ret
  const opt = {
    "y+": date.getFullYear().toString(),        // 年
    "M+": (date.getMonth() + 1).toString(),     // 月
    "d+": date.getDate().toString(),            // 日
    "H+": date.getHours().toString(),           // 时
    "m+": date.getMinutes().toString(),         // 分
    "s+": date.getSeconds().toString()          // 秒
    // 有其他格式化字符需求可以继续添加，必须转化成字符串
  }
  for (let k in opt) {
    ret = new RegExp("(" + k + ")").exec(fmt)
    if (ret) {
      fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
    }
  }
  return fmt
}

export default {
  name: 'TDateTime',
  mixins: [mixin],
  props: ['models'],
  created() {
    // models 存在说明为填写页面 问卷设计器中无需填充默认值
    console.log(this.models)
    console.log(this.item.config.defaultNowTime)
    if (this.item.config.defaultNowTime && this.models) {
      // 使用简单方式格式化日期 避免过多引入依赖
      this.changeValue = dateFormat(this.item.format, new Date())
    }
  }
}
</script>

<style scoped>

</style>
